<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <Import Project="..\..\..\MonoDevelop.props" />
  <Import Project="$(ReferencesGtk)" />
  <PropertyGroup>
    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
    <ProjectGuid>{4C10F8F9-3816-4647-BA6E-85F5DE39883A}</ProjectGuid>
    <RootNamespace>FSharp.MonoDevelop</RootNamespace>
    <AssemblyName>FSharpBinding</AssemblyName>
    <UsePartialTypes>False</UsePartialTypes>
    <RestorePackages>False</RestorePackages>
    <TargetFrameworkVersion>$(MDFrameworkVersion)</TargetFrameworkVersion>
    <TargetFSharpCoreVersion>4.4.3.0</TargetFSharpCoreVersion>
    <SignAssembly>true</SignAssembly>
    <OtherFlags>--publicsign</OtherFlags>
    <AssemblyOriginatorKeyFile>..\..\..\msbuild\MonoDevelop-Public.snk</AssemblyOriginatorKeyFile>
    <OutputPath>..\..\..\build\AddIns\FSharpBinding</OutputPath>
    <OtherFlags>--warnon:1182</OtherFlags>
    <StartAction>Program</StartAction>
    <Externalconsole>true</Externalconsole>
    <StartProgram>$(MSBuildProjectDirectory)\..\..\..\build\bin\MonoDevelop.exe</StartProgram>
    <StartWorkingDirectory>$(MSBuildProjectDirectory)\..\..\..\build\bin</StartWorkingDirectory>
  </PropertyGroup>
  <Target Name="Clean">
    <RemoveDir Directories="..\bin\" />
  </Target>
  <Import Project="$(CustomBeforeMicrosoftCommonTargets)" />
  <Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\FSharp\Microsoft.FSharp.Targets" />
  <Import Project="..\.paket\paket.targets" />
  <Import Project="templates.targets" />
  <ItemGroup>
    <DownloadNupkg Include="FSharp.Core" Version="4.5.4" ExtensionDir="Packages" />
    <DownloadNupkg Include="System.ValueTuple" Version="4.5.0" ExtensionDir="Packages" />
    <Reference Include="System" />
    <Reference Include="System.Xml" />
    <Reference Include="System.Xml.Linq" />
    <Reference Include="System.Core" />
    <Reference Include="System.Numerics" />
    <Reference Include="mscorlib" />
    <Reference Include="Mono.Addins">
      <Private>False</Private>
      <HintPath>..\..\..\build\bin\Mono.Addins.dll</HintPath>
    </Reference>
    <Reference Include="Xwt">
      <Private>False</Private>
      <HintPath>..\..\..\build\bin\Xwt.dll</HintPath>
    </Reference>
    <Reference Include="Xwt.Gtk">
      <Private>False</Private>
      <HintPath>..\..\..\build\bin\Xwt.Gtk.dll</HintPath>
    </Reference>
    <Reference Include="monodoc, Version=1.0.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756" />
    <Reference Include="Microsoft.CodeAnalysis">
      <HintPath>..\..\..\build\bin\Microsoft.CodeAnalysis.dll</HintPath>
      <Private>False</Private>
    </Reference>
    <Reference Include="Xamarin.Mac">
      <HintPath>..\..\Xamarin.Mac.dll</HintPath>
      <Private>False</Private>
    </Reference>
    <Reference Include="Microsoft.CodeAnalysis.Workspaces">
      <HintPath>..\..\..\build\bin\Microsoft.CodeAnalysis.Workspaces.dll</HintPath>
      <Private>False</Private>
    </Reference>
    <Reference Include="Microsoft.CodeAnalysis.Features">
      <HintPath>..\..\..\build\bin\Microsoft.CodeAnalysis.Features.dll</HintPath>
      <Private>False</Private>
    </Reference>
    <Reference Include="System.Composition.AttributedModel">
      <HintPath>..\..\..\build\bin\System.Composition.AttributedModel.dll</HintPath>
      <Private>False</Private>
    </Reference>
    <Reference Include="System.ComponentModel.Composition" />
  </ItemGroup>
  <ItemGroup>
    <Compile Include="Services\Extensions.fs" />
    <Compile Include="Services\CompilerLocationUtils.fs" />
    <Compile Include="Services\OrderAssemblyReferences.fs" />
    <Compile Include="Services\Parameters.fs" />
    <Compile Include="Services\TooltipHelpers.fs" />
    <Compile Include="Services\FileService.fs" />
    <Compile Include="Services\CompilerArguments.fs" />
    <Compile Include="Services\LanguageService.fs" />
    <Compile Include="Services\MDLanguageService.fs" />
    <Compile Include="Services\CompilerService.fs" />
    <Compile Include="Services\InteractiveSession.fs" />
    <Compile Include="Services\RoslynHelpers.fs" />
    <Compile Include="FSharpParsedDocument.fs" />
    <Compile Include="FSharpTokens.fs" />
    <Compile Include="FSharpSymbolHelper.fs" />
    <Compile Include="ProjectSearchCategory.fs" />
    <Compile Include="FSharpProject.fs" />
    <Compile Include="FSharpInteractivePad.fs" />
    <Compile Include="FSharpOptionsPanels.fs" />
    <Compile Include="PortableFSharpProjectFlavor.fs" />
    <Compile Include="FSharpFoldingParser.fs" />
    <Compile Include="FSharpParser.fs" />
    <Compile Include="FSharpOutlineTextEditorExtension.fs" />
    <Compile Include="FSharpIndentationTracker.fs" />
    <Compile Include="TypeSignatureHelp.fs" />
    <Compile Include="FSharpTextEditorCompletion.fs" />
    <Compile Include="FSharpPathExtension.fs" />
    <Compile Include="FSharpUnitTestTextEditorExtension.fs" />
    <Compile Include="FSharpProjectFileNodeExtension.fs" />
    <Compile Include="FSharpTooltipProvider.fs" />
    <Compile Include="FSharpResolverProvider.fs" />
    <Compile Include="VS\ServiceAssemblyContent.fs" />
    <Compile Include="VS\Pervasive.fs" />
    <Compile Include="VS\AssemblyContentProvider.fs" />
    <Compile Include="VS\CommonRoslynHelpers.fs" />
    <Compile Include="CodeFix\AddOpenCodeFixProvider.fs" />
    <Compile Include="RefactoringOperationsHandler.fs" />
    <Compile Include="FSharpFormattingPolicy.fs" />
    <Compile Include="FSharpFormatter.fs" />
    <Compile Include="FSharpFormattingPanelWidget.fs" />
    <Compile Include="FSharpFormattingPolicyPanel.fs" />
    <Compile Include="FSharpSyntaxMode.fs" />
    <Compile Include="FSharpHighlightUsagesExtension.fs" />
    <Compile Include="FakeSearchCategory.fs" />
    <Compile Include="FSharpNavigationTextEditorExtension.fs" />
    <Compile Include="FSharpBraceMatcher.fs" />
    <Compile Include="FSharpDebuggerExpressionResolver.fs" />
    <Compile Include="FSharpSelection.fs" />
    <AdditionalEmbeddedResource Include="FSharpSyntaxMode.xml" />
    <AdditionalEmbeddedResource Include="FSharpFormattingPolicy.xml" />
    <AdditionalEmbeddedResource Include="FSharpStylePolicy.xml" />
    <AdditionalEmbeddedResource Include="FSharpBinding.addin.xml" />
    <None Include="paket.references" />
    <Compile Include="Properties\AddinInfo.fs" />
    <Compile Include="HighlightUnusedCode.fs" />
    <Compile Include="ScriptDebugging.fs" />
    <Compile Include="FSharpProjectCompilerOptions.fs" />
    <Compile Include="FindReferenceUsages.fs" />
    <ProjectReference Include="..\..\..\src\addins\MonoDevelop.DesignerSupport\MonoDevelop.DesignerSupport.csproj">
      <Project>{2C24D515-4A2C-445C-8419-C09231913CFA}</Project>
      <Name>MonoDevelop.DesignerSupport</Name>
      <Private>False</Private>
    </ProjectReference>
    <ProjectReference Include="..\MonoDevelop.FSharp.Gui\MonoDevelop.FSharp.Gui.csproj">
      <Project>{FD0D1033-9145-48E5-8ED8-E2365252878C}</Project>
      <Name>MonoDevelop.FSharp.Gui</Name>
    </ProjectReference>
    <ProjectReference Include="..\MonoDevelop.FSharp.Shared\MonoDevelop.FSharp.Shared.fsproj">
      <Project>{AF5FEAD5-B50E-4F07-A274-32F23D5C504D}</Project>
      <Name>MonoDevelop.FSharp.Shared</Name>
    </ProjectReference>
    <ProjectReference Include="..\..\..\src\addins\MonoDevelop.Debugger\MonoDevelop.Debugger.csproj">
      <Project>{2357AABD-08C7-4808-A495-8FF2D3CDFDB0}</Project>
      <Name>MonoDevelop.Debugger</Name>
      <Private>False</Private>
    </ProjectReference>
    <ProjectReference Include="..\..\..\src\core\MonoDevelop.Core\MonoDevelop.Core.csproj">
      <Project>{7525BB88-6142-4A26-93B9-A30C6983390A}</Project>
      <Name>MonoDevelop.Core</Name>
      <Private>False</Private>
    </ProjectReference>
    <ProjectReference Include="..\..\..\src\core\MonoDevelop.Ide\MonoDevelop.Ide.csproj">
      <Project>{27096E7F-C91C-4AC6-B289-6897A701DF21}</Project>
      <Name>MonoDevelop.Ide</Name>
      <Private>False</Private>
    </ProjectReference>
    <ProjectReference Include="..\..\..\src\addins\MonoDevelop.Refactoring\MonoDevelop.Refactoring.csproj">
      <Project>{100568FC-F4E8-439B-94AD-41D11724E45B}</Project>
      <Name>MonoDevelop.Refactoring</Name>
      <Private>False</Private>
    </ProjectReference>
    <ProjectReference Include="..\..\..\src\addins\MonoDevelop.SourceEditor2\MonoDevelop.SourceEditor.csproj">
      <Project>{F8F92AA4-A376-4679-A9D4-60E7B7FBF477}</Project>
      <Name>MonoDevelop.SourceEditor</Name>
      <Private>False</Private>
    </ProjectReference>
    <ProjectReference Include="..\..\..\src\addins\MonoDevelop.UnitTesting\MonoDevelop.UnitTesting.csproj">
      <Project>{A7A4246D-CEC4-42DF-A3C1-C31B9F51C4EC}</Project>
      <Name>MonoDevelop.UnitTesting</Name>
      <Private>False</Private>
    </ProjectReference>
  </ItemGroup>
  <ItemGroup>
    <IncludeCopyLocal Include="System.Reactive.dll" />
    <IncludeCopyLocal Include="System.Reactive.Linq.dll" />
    <IncludeCopyLocal Include="Newtonsoft.Json.dll" />
    <IncludeCopyLocal Include="ExtCore.dll" />
    <IncludeCopyLocal Include="Fantomas.dll" />
    <IncludeCopyLocal Include="FSharp.Compiler.CodeDom.dll" />
    <IncludeCopyLocal Include="FSharp.Compiler.Service.dll" />
    <IncludeCopyLocal Include="FSharp.Core.dll" />
    <IncludeCopyLocal Include="MonoDevelop.FSharp.Shared.dll" />
  </ItemGroup>
  <ProjectExtensions>
    <MonoDevelop>
      <Properties>
        <Policies>
          <TextStylePolicy TabWidth="4" IndentWidth="4" RemoveTrailingWhitespace="True" NoTabsAfterNonTabs="False" EolMarker="Native" FileWidth="80" TabsToSpaces="True" scope="text/x-fsharp" />
          <FSharpFormattingPolicy scope="text/x-fsharp">
            <DefaultFormat IndentOnTryWith="False" ReorderOpenDeclaration="False" SpaceAfterComma="True" SpaceAfterSemicolon="True" SpaceAroundDelimiter="True" SpaceBeforeArgument="True" SpaceBeforeColon="True" __added="0" />
          </FSharpFormattingPolicy>
        </Policies>
      </Properties>
    </MonoDevelop>
  </ProjectExtensions>
  <Choose>
    <When Condition="$(TargetFrameworkIdentifier) == '.NETFramework' And $(TargetFrameworkVersion) == 'v4.7.2'">
      <ItemGroup>
        <Reference Include="ExtCore">
          <HintPath>..\packages\ExtCore\lib\net45\ExtCore.dll</HintPath>
          <Private>True</Private>
          <Paket>True</Paket>
        </Reference>
      </ItemGroup>
    </When>
  </Choose>
  <Choose>
    <When Condition="$(TargetFrameworkIdentifier) == '.NETFramework' And $(TargetFrameworkVersion) == 'v4.7.2'">
      <ItemGroup>
        <Reference Include="Fantomas">
          <HintPath>..\packages\Fantomas\lib\net461\Fantomas.dll</HintPath>
          <Private>True</Private>
          <Paket>True</Paket>
        </Reference>
      </ItemGroup>
    </When>
  </Choose>
  <Choose>
    <When Condition="$(TargetFrameworkIdentifier) == '.NETFramework' And $(TargetFrameworkVersion) == 'v4.7.2'">
      <ItemGroup>
        <Reference Include="FSharp.Compiler.CodeDom">
          <HintPath>..\packages\FSharp.Compiler.CodeDom\lib\net40\FSharp.Compiler.CodeDom.dll</HintPath>
          <Private>True</Private>
          <Paket>True</Paket>
        </Reference>
      </ItemGroup>
    </When>
  </Choose>
  <Choose>
    <When Condition="$(TargetFrameworkIdentifier) == '.NETFramework' And $(TargetFrameworkVersion) == 'v4.7.2'">
      <ItemGroup>
        <Reference Include="FSharp.Compiler.Service">
          <HintPath>..\packages\FSharp.Compiler.Service\lib\net461\FSharp.Compiler.Service.dll</HintPath>
          <Private>True</Private>
          <Paket>True</Paket>
        </Reference>
      </ItemGroup>
    </When>
  </Choose>
  <Choose>
    <When Condition="$(TargetFrameworkIdentifier) == '.NETFramework' And $(TargetFrameworkVersion) == 'v4.7.2'">
      <ItemGroup>
        <Reference Include="FSharp.Core">
          <HintPath>..\packages\FSharp.Core\lib\net45\FSharp.Core.dll</HintPath>
          <Private>True</Private>
          <Paket>True</Paket>
        </Reference>
      </ItemGroup>
    </When>
  </Choose>
  <Choose>
    <When Condition="$(TargetFrameworkIdentifier) == '.NETFramework' And $(TargetFrameworkVersion) == 'v4.7.2'">
      <ItemGroup>
        <Reference Include="Mono.Cecil">
          <HintPath>..\packages\Mono.Cecil\lib\net40\Mono.Cecil.dll</HintPath>
          <Private>True</Private>
          <Paket>True</Paket>
        </Reference>
        <Reference Include="Mono.Cecil.Mdb">
          <HintPath>..\packages\Mono.Cecil\lib\net40\Mono.Cecil.Mdb.dll</HintPath>
          <Private>True</Private>
          <Paket>True</Paket>
        </Reference>
        <Reference Include="Mono.Cecil.Pdb">
          <HintPath>..\packages\Mono.Cecil\lib\net40\Mono.Cecil.Pdb.dll</HintPath>
          <Private>True</Private>
          <Paket>True</Paket>
        </Reference>
        <Reference Include="Mono.Cecil.Rocks">
          <HintPath>..\packages\Mono.Cecil\lib\net40\Mono.Cecil.Rocks.dll</HintPath>
          <Private>True</Private>
          <Paket>True</Paket>
        </Reference>
      </ItemGroup>
    </When>
  </Choose>
  <Choose>
    <When Condition="$(TargetFrameworkIdentifier) == '.NETFramework' And $(TargetFrameworkVersion) == 'v4.7.2'">
      <ItemGroup>
        <Reference Include="Newtonsoft.Json">
          <HintPath>..\packages\Newtonsoft.Json\lib\net45\Newtonsoft.Json.dll</HintPath>
          <Private>True</Private>
          <Paket>True</Paket>
        </Reference>
      </ItemGroup>
    </When>
  </Choose>
  <Choose>
    <When Condition="$(TargetFrameworkIdentifier) == '.NETFramework' And $(TargetFrameworkVersion) == 'v4.7.2'">
      <ItemGroup>
        <Reference Include="System.Collections.Immutable">
          <HintPath>..\packages\System.Collections.Immutable\lib\netstandard2.0\System.Collections.Immutable.dll</HintPath>
          <Private>True</Private>
          <Paket>True</Paket>
        </Reference>
      </ItemGroup>
    </When>
  </Choose>
  <Choose>
    <When Condition="$(TargetFrameworkIdentifier) == '.NETFramework' And $(TargetFrameworkVersion) == 'v4.7.2'">
      <ItemGroup>
        <Reference Include="System.Windows">
          <Paket>True</Paket>
        </Reference>
        <Reference Include="System.Windows.Forms">
          <Paket>True</Paket>
        </Reference>
        <Reference Include="WindowsBase">
          <Paket>True</Paket>
        </Reference>
        <Reference Include="System.Reactive">
          <HintPath>..\packages\System.Reactive\lib\net46\System.Reactive.dll</HintPath>
          <Private>True</Private>
          <Paket>True</Paket>
        </Reference>
      </ItemGroup>
    </When>
  </Choose>
  <Choose>
    <When Condition="$(TargetFrameworkIdentifier) == '.NETFramework' And $(TargetFrameworkVersion) == 'v4.7.2'">
      <ItemGroup>
        <Reference Include="System.Reactive.Linq">
          <HintPath>..\packages\System.Reactive.Linq\lib\net46\System.Reactive.Linq.dll</HintPath>
          <Private>True</Private>
          <Paket>True</Paket>
        </Reference>
      </ItemGroup>
    </When>
  </Choose>
  <Choose>
    <When Condition="$(TargetFrameworkIdentifier) == '.NETFramework' And $(TargetFrameworkVersion) == 'v4.7.2'">
      <ItemGroup>
        <Reference Include="System.Reflection.Metadata">
          <HintPath>..\packages\System.Reflection.Metadata\lib\netstandard2.0\System.Reflection.Metadata.dll</HintPath>
          <Private>True</Private>
          <Paket>True</Paket>
        </Reference>
      </ItemGroup>
    </When>
  </Choose>
  <Choose>
    <When Condition="$(TargetFrameworkIdentifier) == '.NETFramework' And $(TargetFrameworkVersion) == 'v4.7.2'">
      <ItemGroup>
        <Reference Include="System.Runtime.CompilerServices.Unsafe">
          <HintPath>..\packages\System.Runtime.CompilerServices.Unsafe\lib\netstandard2.0\System.Runtime.CompilerServices.Unsafe.dll</HintPath>
          <Private>True</Private>
          <Paket>True</Paket>
        </Reference>
      </ItemGroup>
    </When>
  </Choose>
  <Choose>
    <When Condition="$(TargetFrameworkIdentifier) == '.NETFramework' And $(TargetFrameworkVersion) == 'v4.7.2'">
      <ItemGroup>
        <Reference Include="System.Threading.Tasks.Extensions">
          <HintPath>..\packages\System.Threading.Tasks.Extensions\lib\netstandard2.0\System.Threading.Tasks.Extensions.dll</HintPath>
          <Private>True</Private>
          <Paket>True</Paket>
        </Reference>
      </ItemGroup>
    </When>
  </Choose>
  <Choose>
    <When Condition="$(TargetFrameworkIdentifier) == '.NETFramework' And $(TargetFrameworkVersion) == 'v4.7.2'">
      <ItemGroup>
        <Reference Include="System.ValueTuple">
          <HintPath>..\packages\System.ValueTuple\lib\net47\System.ValueTuple.dll</HintPath>
          <Private>True</Private>
          <Paket>True</Paket>
        </Reference>
      </ItemGroup>
    </When>
  </Choose>
  <Import Project="..\packages\StrongNamer\build\StrongNamer.targets" Condition="Exists('..\packages\StrongNamer\build\StrongNamer.targets')" Label="Paket" />
</Project>
